﻿
-- ================================================
-- Remarks: 
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'Dasideen_Sys_ErrorLog_Insert')
	BEGIN
		DROP  Procedure  Dasideen_Sys_ErrorLog_Insert
	END

GO

CREATE PROCEDURE [Dasideen_Sys_ErrorLog_Insert]
-- =============================================
-- Author:		<Sagar and Ram Parvesh>
-- Create date: <12/05/2015>
-- Description:	<Dasideen_Sys_ErrorLog_Insert>
-- ============================================= 
-- Add the parameters for the stored procedure here
	(
				
				@ApplicationName varchar(500) = NULL,
				@MethodName varchar(500)= NULL,
				@ErrorMessage varchar(MAX),
				@StackTrace varchar(MAX),

				@Sys_CreatedByID varchar(50)= NULL,
				@Sys_ModifiedByID varchar(50) = NULL,
				@Sys_DeleteType int = 0,
				@Sys_OrganizationID int = NULL,
				@Sys_InitialPrimaryKeys varchar(max)= NULL,
				@Sys_WorkstationName varchar(50)= NULL,
				
				@Sys_DateOfCreation datetime OUTPUT,
				@ErrorLogPrimaryID int OUTPUT
	)
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

	IF @Sys_WorkstationName = 'Default'	
	BEGIN
		SET @Sys_WorkstationName = (SELECT @@SERVERNAME);
	END
	DECLARE @CurrentDataTime datetime;
	SET @CurrentDataTime = GETDATE();
	
    INSERT INTO [Sys_ErrorLog]
           (	
				
				[ApplicationName],
				[MethodName],
				[ErrorMessage],
				[StackTrace],

				[Sys_DateOfCreation],
				[Sys_DateOfModification],
				[Sys_CreatedByID],
				[Sys_ModifiedByID],
				[Sys_DeleteType],
				[Sys_IsDeleted],
				[Sys_OrganizationID],
				[Sys_InitialPrimaryKeys],
				[Sys_WorkstationName]
			)
     VALUES
           (
				
				@ApplicationName,
				@MethodName,
				@ErrorMessage,
				@StackTrace,

				@CurrentDataTime,
				@CurrentDataTime,
				@Sys_CreatedByID,
				@Sys_ModifiedByID,
				@Sys_DeleteType,
				0,
				@Sys_OrganizationID,
				@Sys_InitialPrimaryKeys,
				@Sys_WorkstationName
			);
			SET @ErrorLogPrimaryID = SCOPE_IDENTITY();
			SET @Sys_DateOfCreation = @CurrentDataTime;
END
GO
